[INFO] cloning repository https://github.com/ashishnegi/learndb
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ashishnegi/learndb" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fashishnegi%2Flearndb", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fashishnegi%2Flearndb'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 59642e60bca7e59446f936c1836f98a1805d108f
[INFO] checking ashishnegi/learndb against try#8ac0915e346f9a2e49ca3951b642c55bd7d1eaab for pr-158447
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fashishnegi%2Flearndb" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/ashishnegi/learndb
[INFO] finished tweaking git repo https://github.com/ashishnegi/learndb
[INFO] tweaked toml for git repo https://github.com/ashishnegi/learndb written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/ashishnegi/learndb on toolchain 8ac0915e346f9a2e49ca3951b642c55bd7d1eaab
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8ac0915e346f9a2e49ca3951b642c55bd7d1eaab" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/ashishnegi/learndb already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8ac0915e346f9a2e49ca3951b642c55bd7d1eaab" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: `learndb` (manifest) generated 1 warning
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[ERROR] error running command: no output for 300 seconds
[INFO] checking ashishnegi/learndb against try#8ac0915e346f9a2e49ca3951b642c55bd7d1eaab for pr-158447
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fashishnegi%2Flearndb" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/ashishnegi/learndb
[INFO] finished tweaking git repo https://github.com/ashishnegi/learndb
[INFO] tweaked toml for git repo https://github.com/ashishnegi/learndb written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/ashishnegi/learndb on toolchain 8ac0915e346f9a2e49ca3951b642c55bd7d1eaab
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8ac0915e346f9a2e49ca3951b642c55bd7d1eaab" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/ashishnegi/learndb already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8ac0915e346f9a2e49ca3951b642c55bd7d1eaab" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: `learndb` (manifest) generated 1 warning
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded fuchsia-zircon v0.2.1
[INFO] [stderr]   Downloaded rand v0.3.18
[INFO] [stderr]   Downloaded fuchsia-zircon-sys v0.2.0
[INFO] [stderr]   Downloaded downcast-rs v1.0.3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 7b9d33e4d46b9d52455de24b627a06e6d230e2fc8728d82fe91caf0ed1b1e80b
[INFO] running `Command { std: "docker" "start" "7b9d33e4d46b9d52455de24b627a06e6d230e2fc8728d82fe91caf0ed1b1e80b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "7b9d33e4d46b9d52455de24b627a06e6d230e2fc8728d82fe91caf0ed1b1e80b" "/opt/rustwide/cargo-home/bin/cargo" "+8ac0915e346f9a2e49ca3951b642c55bd7d1eaab" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "7b9d33e4d46b9d52455de24b627a06e6d230e2fc8728d82fe91caf0ed1b1e80b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "7b9d33e4d46b9d52455de24b627a06e6d230e2fc8728d82fe91caf0ed1b1e80b" "/opt/rustwide/cargo-home/bin/cargo" "+8ac0915e346f9a2e49ca3951b642c55bd7d1eaab" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: `learndb` (manifest) generated 1 warning
[INFO] [stderr]     Checking libc v0.2.33
[INFO] [stderr]     Checking downcast-rs v1.0.3
[INFO] [stderr]     Checking rand v0.3.18
[INFO] [stderr]     Checking learndb v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]  --> src/sqliters/context.rs:9:25
[INFO] [stdout]   |
[INFO] [stdout] 9 |     fn outfn(&mut self, &statement::InsertStatement);
[INFO] [stdout]   |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &statement::InsertStatement`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout]   = note: `#[warn(anonymous_parameters)]` (part of `#[warn(rust_2018_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/sqliters/context.rs:5:23
[INFO] [stdout]   |
[INFO] [stdout] 5 |     select_outfn: Box<OutFn>
[INFO] [stdout]   |                       ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]   = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 5 |     select_outfn: Box<dyn OutFn>
[INFO] [stdout]   |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/main.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]  --> src/sqliters/context.rs:9:25
[INFO] [stdout]   |
[INFO] [stdout] 9 |     fn outfn(&mut self, &statement::InsertStatement);
[INFO] [stdout]   |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &statement::InsertStatement`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout]   = note: `#[warn(anonymous_parameters)]` (part of `#[warn(rust_2018_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/sqliters/context.rs:30:34
[INFO] [stdout]    |
[INFO] [stdout] 30 |     pub fn new(select_outfn: Box<OutFn>) -> Self {
[INFO] [stdout]    |                                  ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 30 |     pub fn new(select_outfn: Box<dyn OutFn>) -> Self {
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/sqliters/context.rs:41:35
[INFO] [stdout]    |
[INFO] [stdout] 41 |     pub fn get_out(&self) -> &Box<OutFn> {
[INFO] [stdout]    |                                   ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 41 |     pub fn get_out(&self) -> &Box<dyn OutFn> {
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/sqliters/context.rs:5:23
[INFO] [stdout]   |
[INFO] [stdout] 5 |     select_outfn: Box<OutFn>
[INFO] [stdout]   |                       ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]   = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 5 |     select_outfn: Box<dyn OutFn>
[INFO] [stdout]   |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/sqliters/context.rs:30:34
[INFO] [stdout]    |
[INFO] [stdout] 30 |     pub fn new(select_outfn: Box<OutFn>) -> Self {
[INFO] [stdout]    |                                  ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 30 |     pub fn new(select_outfn: Box<dyn OutFn>) -> Self {
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_root_node` is never used
[INFO] [stdout]    --> src/sqliters/page.rs:397:4
[INFO] [stdout]     |
[INFO] [stdout] 397 | fn is_root_node(page: &Vec<u8>) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]   --> src/sqliters/statement.rs:76:52
[INFO] [stdout]    |
[INFO] [stdout] 76 |     let id_bytes: [u8; consts::ID_SIZE] = unsafe { transmute(insert.id.to_be()) };
[INFO] [stdout]    |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: there's also `to_le_bytes` and `to_be_bytes` if you expect a particular byte order
[INFO] [stdout]    = note: `#[warn(unnecessary_transmutes)]` on by default
[INFO] [stdout] help: replace this with
[INFO] [stdout]    |
[INFO] [stdout] 76 -     let id_bytes: [u8; consts::ID_SIZE] = unsafe { transmute(insert.id.to_be()) };
[INFO] [stdout] 76 +     let id_bytes: [u8; consts::ID_SIZE] = unsafe { i32::to_ne_bytes(insert.id.to_be()) };
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]   --> src/sqliters/statement.rs:98:26
[INFO] [stdout]    |
[INFO] [stdout] 98 |     insert.id = unsafe { transmute::<[u8;4], i32>(id_bytes) }.to_be();
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: there's also `from_le_bytes` and `from_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]    |
[INFO] [stdout] 98 -     insert.id = unsafe { transmute::<[u8;4], i32>(id_bytes) }.to_be();
[INFO] [stdout] 98 +     insert.id = unsafe { i32::from_ne_bytes(id_bytes) }.to_be();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `must_use` that must be used
[INFO] [stdout]   --> src/sqliters/pager.rs:73:13
[INFO] [stdout]    |
[INFO] [stdout] 73 |             format!("Could not read full page_buffer : bytes_read {} : page_buffer_len {}", bytes_read, page_buffer.len());
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 73 |             let _ = format!("Could not read full page_buffer : bytes_read {} : page_buffer_len {}", bytes_read, page_buffer.len());
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]   --> src/sqliters/page.rs:60:84
[INFO] [stdout]    |
[INFO] [stdout] 60 |         let right_page_bytes: [u8; consts::INTERNAL_NODE_PAGE_NUM_SIZE] = unsafe { transmute(right_page_num.to_be()) };
[INFO] [stdout]    |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: there's also `to_le_bytes` and `to_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]    |
[INFO] [stdout] 60 -         let right_page_bytes: [u8; consts::INTERNAL_NODE_PAGE_NUM_SIZE] = unsafe { transmute(right_page_num.to_be()) };
[INFO] [stdout] 60 +         let right_page_bytes: [u8; consts::INTERNAL_NODE_PAGE_NUM_SIZE] = unsafe { u64::to_ne_bytes(right_page_num.to_be()) };
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]   --> src/sqliters/page.rs:64:83
[INFO] [stdout]    |
[INFO] [stdout] 64 |         let left_page_bytes: [u8; consts::INTERNAL_NODE_PAGE_NUM_SIZE] = unsafe { transmute(left_page_num.to_be()) };
[INFO] [stdout]    |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: there's also `to_le_bytes` and `to_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]    |
[INFO] [stdout] 64 -         let left_page_bytes: [u8; consts::INTERNAL_NODE_PAGE_NUM_SIZE] = unsafe { transmute(left_page_num.to_be()) };
[INFO] [stdout] 64 +         let left_page_bytes: [u8; consts::INTERNAL_NODE_PAGE_NUM_SIZE] = unsafe { u64::to_ne_bytes(left_page_num.to_be()) };
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]   --> src/sqliters/page.rs:72:57
[INFO] [stdout]    |
[INFO] [stdout] 72 |         let key_bytes: [u8; consts::KEY_SIZE] = unsafe {transmute(max_key.to_be())};
[INFO] [stdout]    |                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: there's also `to_le_bytes` and `to_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]    |
[INFO] [stdout] 72 -         let key_bytes: [u8; consts::KEY_SIZE] = unsafe {transmute(max_key.to_be())};
[INFO] [stdout] 72 +         let key_bytes: [u8; consts::KEY_SIZE] = unsafe {i32::to_ne_bytes(max_key.to_be())};
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sqliters/page.rs:313:30
[INFO] [stdout]     |
[INFO] [stdout] 313 |     let node_type = unsafe { transmute::<[u8;consts::PAGE_TYPE_SIZE], u8>(node_type_bytes) }.to_be();
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: there's also `from_le_bytes` and `from_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 313 -     let node_type = unsafe { transmute::<[u8;consts::PAGE_TYPE_SIZE], u8>(node_type_bytes) }.to_be();
[INFO] [stdout] 313 +     let node_type = unsafe { u8::from_ne_bytes(node_type_bytes) }.to_be();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sqliters/page.rs:322:66
[INFO] [stdout]     |
[INFO] [stdout] 322 |     let node_type_bytes: [u8; consts::PAGE_TYPE_SIZE] = unsafe { transmute(node_type_value.to_be()) };
[INFO] [stdout]     |                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: there's also `to_le_bytes` and `to_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 322 -     let node_type_bytes: [u8; consts::PAGE_TYPE_SIZE] = unsafe { transmute(node_type_value.to_be()) };
[INFO] [stdout] 322 +     let node_type_bytes: [u8; consts::PAGE_TYPE_SIZE] = unsafe { u8::to_ne_bytes(node_type_value.to_be()) };
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sqliters/page.rs:338:14
[INFO] [stdout]     |
[INFO] [stdout] 338 |     unsafe { transmute::<[u8;consts::NUM_ENTRIES_SIZE], u64>(id_bytes) }.to_be()
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: there's also `from_le_bytes` and `from_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 338 -     unsafe { transmute::<[u8;consts::NUM_ENTRIES_SIZE], u64>(id_bytes) }.to_be()
[INFO] [stdout] 338 +     unsafe { u64::from_ne_bytes(id_bytes) }.to_be()
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sqliters/page.rs:383:64
[INFO] [stdout]     |
[INFO] [stdout] 383 |     let count_bytes: [u8; consts::NUM_ENTRIES_SIZE] = unsafe { transmute(count.to_be()) };
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: there's also `to_le_bytes` and `to_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 383 -     let count_bytes: [u8; consts::NUM_ENTRIES_SIZE] = unsafe { transmute(count.to_be()) };
[INFO] [stdout] 383 +     let count_bytes: [u8; consts::NUM_ENTRIES_SIZE] = unsafe { usize::to_ne_bytes(count.to_be()) };
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sqliters/page.rs:393:82
[INFO] [stdout]     |
[INFO] [stdout] 393 |     let next_sibling_num_bytes: [u8; consts::NEXT_LEAF_NODE_NUM_SIZE] = unsafe { transmute(next_sibling_num.to_be()) };
[INFO] [stdout]     |                                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: there's also `to_le_bytes` and `to_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 393 -     let next_sibling_num_bytes: [u8; consts::NEXT_LEAF_NODE_NUM_SIZE] = unsafe { transmute(next_sibling_num.to_be()) };
[INFO] [stdout] 393 +     let next_sibling_num_bytes: [u8; consts::NEXT_LEAF_NODE_NUM_SIZE] = unsafe { u64::to_ne_bytes(next_sibling_num.to_be()) };
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sqliters/page.rs:400:28
[INFO] [stdout]     |
[INFO] [stdout] 400 |     let is_root = unsafe { transmute::<[u8;consts::IS_ROOT_SIZE], u8>(is_root_bytes) }.to_be();
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: there's also `from_le_bytes` and `from_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 400 -     let is_root = unsafe { transmute::<[u8;consts::IS_ROOT_SIZE], u8>(is_root_bytes) }.to_be();
[INFO] [stdout] 400 +     let is_root = unsafe { u8::from_ne_bytes(is_root_bytes) }.to_be();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sqliters/page.rs:406:61
[INFO] [stdout]     |
[INFO] [stdout] 406 |     let is_root_bytes: [u8; consts::IS_ROOT_SIZE] = unsafe {transmute(is_root_val.to_be())};
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: there's also `to_le_bytes` and `to_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 406 -     let is_root_bytes: [u8; consts::IS_ROOT_SIZE] = unsafe {transmute(is_root_val.to_be())};
[INFO] [stdout] 406 +     let is_root_bytes: [u8; consts::IS_ROOT_SIZE] = unsafe {u8::to_ne_bytes(is_root_val.to_be())};
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sqliters/page.rs:413:66
[INFO] [stdout]     |
[INFO] [stdout] 413 |     let node_type_bytes: [u8; consts::IS_ROOT_OFFSET] = unsafe { transmute(consts::LEAF_NODE_TYPE.to_be()) };
[INFO] [stdout]     |                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: there's also `to_le_bytes` and `to_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 413 -     let node_type_bytes: [u8; consts::IS_ROOT_OFFSET] = unsafe { transmute(consts::LEAF_NODE_TYPE.to_be()) };
[INFO] [stdout] 413 +     let node_type_bytes: [u8; consts::IS_ROOT_OFFSET] = unsafe { u8::to_ne_bytes(consts::LEAF_NODE_TYPE.to_be()) };
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sqliters/page.rs:417:62
[INFO] [stdout]     |
[INFO] [stdout] 417 |     let is_root_bytes: [u8; consts::IS_ROOT_SIZE] = unsafe { transmute(is_root_value.to_be()) };
[INFO] [stdout]     |                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: there's also `to_le_bytes` and `to_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 417 -     let is_root_bytes: [u8; consts::IS_ROOT_SIZE] = unsafe { transmute(is_root_value.to_be()) };
[INFO] [stdout] 417 +     let is_root_bytes: [u8; consts::IS_ROOT_SIZE] = unsafe { u8::to_ne_bytes(is_root_value.to_be()) };
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sqliters/page.rs:430:14
[INFO] [stdout]     |
[INFO] [stdout] 430 |     unsafe { transmute::<[u8;4], i32>(id_bytes) }.to_be()
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: there's also `from_le_bytes` and `from_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 430 -     unsafe { transmute::<[u8;4], i32>(id_bytes) }.to_be()
[INFO] [stdout] 430 +     unsafe { i32::from_ne_bytes(id_bytes) }.to_be()
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sqliters/page.rs:454:14
[INFO] [stdout]     |
[INFO] [stdout] 454 |     unsafe { transmute::<[u8;4], i32>(id_bytes) }.to_be()
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: there's also `from_le_bytes` and `from_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 454 -     unsafe { transmute::<[u8;4], i32>(id_bytes) }.to_be()
[INFO] [stdout] 454 +     unsafe { i32::from_ne_bytes(id_bytes) }.to_be()
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sqliters/page.rs:462:14
[INFO] [stdout]     |
[INFO] [stdout] 462 |     unsafe { transmute::<[u8;8], u64>(page_num_bytes) }.to_be()
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: there's also `from_le_bytes` and `from_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 462 -     unsafe { transmute::<[u8;8], u64>(page_num_bytes) }.to_be()
[INFO] [stdout] 462 +     unsafe { u64::from_ne_bytes(page_num_bytes) }.to_be()
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sqliters/page.rs:469:14
[INFO] [stdout]     |
[INFO] [stdout] 469 |     unsafe { transmute::<[u8;8], u64>(page_num_bytes) }.to_be()
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: there's also `from_le_bytes` and `from_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 469 -     unsafe { transmute::<[u8;8], u64>(page_num_bytes) }.to_be()
[INFO] [stdout] 469 +     unsafe { u64::from_ne_bytes(page_num_bytes) }.to_be()
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sqliters/page.rs:474:46
[INFO] [stdout]     |
[INFO] [stdout] 474 |     page_num_bytes.copy_from_slice(&unsafe { transmute::<u64, [u8;consts::INTERNAL_NODE_PAGE_NUM_SIZE]>(right_page_num.to_be()) } );
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: there's also `to_le_bytes` and `to_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 474 -     page_num_bytes.copy_from_slice(&unsafe { transmute::<u64, [u8;consts::INTERNAL_NODE_PAGE_NUM_SIZE]>(right_page_num.to_be()) } );
[INFO] [stdout] 474 +     page_num_bytes.copy_from_slice(&unsafe { u64::to_ne_bytes(right_page_num.to_be()) } );
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sqliters/page.rs:483:14
[INFO] [stdout]     |
[INFO] [stdout] 483 |     unsafe { transmute::<[u8;consts::NEXT_LEAF_NODE_NUM_SIZE], u64>(next_page_num_bytes) }.to_be()
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: there's also `from_le_bytes` and `from_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 483 -     unsafe { transmute::<[u8;consts::NEXT_LEAF_NODE_NUM_SIZE], u64>(next_page_num_bytes) }.to_be()
[INFO] [stdout] 483 +     unsafe { u64::from_ne_bytes(next_page_num_bytes) }.to_be()
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sqliters/page.rs:489:36
[INFO] [stdout]     |
[INFO] [stdout] 489 |         .copy_from_slice(&unsafe { transmute::<u64, [u8;consts::INTERNAL_NODE_PAGE_NUM_SIZE]>(next_page_num.to_be()) });
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: there's also `to_le_bytes` and `to_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 489 -         .copy_from_slice(&unsafe { transmute::<u64, [u8;consts::INTERNAL_NODE_PAGE_NUM_SIZE]>(next_page_num.to_be()) });
[INFO] [stdout] 489 +         .copy_from_slice(&unsafe { u64::to_ne_bytes(next_page_num.to_be()) });
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sqliters/page.rs:491:35
[INFO] [stdout]     |
[INFO] [stdout] 491 |         .copy_from_slice(&unsafe {transmute::<i32, [u8;consts::INTERNAL_NODE_KEY_SIZE]>(max_key.to_be())});
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: there's also `to_le_bytes` and `to_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 491 -         .copy_from_slice(&unsafe {transmute::<i32, [u8;consts::INTERNAL_NODE_KEY_SIZE]>(max_key.to_be())});
[INFO] [stdout] 491 +         .copy_from_slice(&unsafe {i32::to_ne_bytes(max_key.to_be())});
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `delete_db` is never used
[INFO] [stdout]   --> src/sqliters/table.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout]  8 | impl Table {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub fn delete_db(&mut self) -> Result<(), String> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `db_filepath` is never read
[INFO] [stdout]   --> src/sqliters/pager.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub struct Pager {
[INFO] [stdout]    |            ----- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 10 |     db_filepath: String,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Pager` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `delete_db_file` is never used
[INFO] [stdout]   --> src/sqliters/pager.rs:80:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl Pager {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 80 |     pub fn delete_db_file(&mut self) -> Result<(), String> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_root_node` is never used
[INFO] [stdout]    --> src/sqliters/page.rs:397:4
[INFO] [stdout]     |
[INFO] [stdout] 397 | fn is_root_node(page: &Vec<u8>) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]   --> src/sqliters/statement.rs:76:52
[INFO] [stdout]    |
[INFO] [stdout] 76 |     let id_bytes: [u8; consts::ID_SIZE] = unsafe { transmute(insert.id.to_be()) };
[INFO] [stdout]    |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: there's also `to_le_bytes` and `to_be_bytes` if you expect a particular byte order
[INFO] [stdout]    = note: `#[warn(unnecessary_transmutes)]` on by default
[INFO] [stdout] help: replace this with
[INFO] [stdout]    |
[INFO] [stdout] 76 -     let id_bytes: [u8; consts::ID_SIZE] = unsafe { transmute(insert.id.to_be()) };
[INFO] [stdout] 76 +     let id_bytes: [u8; consts::ID_SIZE] = unsafe { i32::to_ne_bytes(insert.id.to_be()) };
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]   --> src/sqliters/statement.rs:98:26
[INFO] [stdout]    |
[INFO] [stdout] 98 |     insert.id = unsafe { transmute::<[u8;4], i32>(id_bytes) }.to_be();
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: there's also `from_le_bytes` and `from_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]    |
[INFO] [stdout] 98 -     insert.id = unsafe { transmute::<[u8;4], i32>(id_bytes) }.to_be();
[INFO] [stdout] 98 +     insert.id = unsafe { i32::from_ne_bytes(id_bytes) }.to_be();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `must_use` that must be used
[INFO] [stdout]   --> src/sqliters/pager.rs:73:13
[INFO] [stdout]    |
[INFO] [stdout] 73 |             format!("Could not read full page_buffer : bytes_read {} : page_buffer_len {}", bytes_read, page_buffer.len());
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 73 |             let _ = format!("Could not read full page_buffer : bytes_read {} : page_buffer_len {}", bytes_read, page_buffer.len());
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]   --> src/sqliters/page.rs:60:84
[INFO] [stdout]    |
[INFO] [stdout] 60 |         let right_page_bytes: [u8; consts::INTERNAL_NODE_PAGE_NUM_SIZE] = unsafe { transmute(right_page_num.to_be()) };
[INFO] [stdout]    |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: there's also `to_le_bytes` and `to_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]    |
[INFO] [stdout] 60 -         let right_page_bytes: [u8; consts::INTERNAL_NODE_PAGE_NUM_SIZE] = unsafe { transmute(right_page_num.to_be()) };
[INFO] [stdout] 60 +         let right_page_bytes: [u8; consts::INTERNAL_NODE_PAGE_NUM_SIZE] = unsafe { u64::to_ne_bytes(right_page_num.to_be()) };
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]   --> src/sqliters/page.rs:64:83
[INFO] [stdout]    |
[INFO] [stdout] 64 |         let left_page_bytes: [u8; consts::INTERNAL_NODE_PAGE_NUM_SIZE] = unsafe { transmute(left_page_num.to_be()) };
[INFO] [stdout]    |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: there's also `to_le_bytes` and `to_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]    |
[INFO] [stdout] 64 -         let left_page_bytes: [u8; consts::INTERNAL_NODE_PAGE_NUM_SIZE] = unsafe { transmute(left_page_num.to_be()) };
[INFO] [stdout] 64 +         let left_page_bytes: [u8; consts::INTERNAL_NODE_PAGE_NUM_SIZE] = unsafe { u64::to_ne_bytes(left_page_num.to_be()) };
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]   --> src/sqliters/page.rs:72:57
[INFO] [stdout]    |
[INFO] [stdout] 72 |         let key_bytes: [u8; consts::KEY_SIZE] = unsafe {transmute(max_key.to_be())};
[INFO] [stdout]    |                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: there's also `to_le_bytes` and `to_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]    |
[INFO] [stdout] 72 -         let key_bytes: [u8; consts::KEY_SIZE] = unsafe {transmute(max_key.to_be())};
[INFO] [stdout] 72 +         let key_bytes: [u8; consts::KEY_SIZE] = unsafe {i32::to_ne_bytes(max_key.to_be())};
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sqliters/page.rs:313:30
[INFO] [stdout]     |
[INFO] [stdout] 313 |     let node_type = unsafe { transmute::<[u8;consts::PAGE_TYPE_SIZE], u8>(node_type_bytes) }.to_be();
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: there's also `from_le_bytes` and `from_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 313 -     let node_type = unsafe { transmute::<[u8;consts::PAGE_TYPE_SIZE], u8>(node_type_bytes) }.to_be();
[INFO] [stdout] 313 +     let node_type = unsafe { u8::from_ne_bytes(node_type_bytes) }.to_be();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sqliters/page.rs:322:66
[INFO] [stdout]     |
[INFO] [stdout] 322 |     let node_type_bytes: [u8; consts::PAGE_TYPE_SIZE] = unsafe { transmute(node_type_value.to_be()) };
[INFO] [stdout]     |                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: there's also `to_le_bytes` and `to_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 322 -     let node_type_bytes: [u8; consts::PAGE_TYPE_SIZE] = unsafe { transmute(node_type_value.to_be()) };
[INFO] [stdout] 322 +     let node_type_bytes: [u8; consts::PAGE_TYPE_SIZE] = unsafe { u8::to_ne_bytes(node_type_value.to_be()) };
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sqliters/page.rs:338:14
[INFO] [stdout]     |
[INFO] [stdout] 338 |     unsafe { transmute::<[u8;consts::NUM_ENTRIES_SIZE], u64>(id_bytes) }.to_be()
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: there's also `from_le_bytes` and `from_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 338 -     unsafe { transmute::<[u8;consts::NUM_ENTRIES_SIZE], u64>(id_bytes) }.to_be()
[INFO] [stdout] 338 +     unsafe { u64::from_ne_bytes(id_bytes) }.to_be()
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sqliters/page.rs:383:64
[INFO] [stdout]     |
[INFO] [stdout] 383 |     let count_bytes: [u8; consts::NUM_ENTRIES_SIZE] = unsafe { transmute(count.to_be()) };
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: there's also `to_le_bytes` and `to_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 383 -     let count_bytes: [u8; consts::NUM_ENTRIES_SIZE] = unsafe { transmute(count.to_be()) };
[INFO] [stdout] 383 +     let count_bytes: [u8; consts::NUM_ENTRIES_SIZE] = unsafe { usize::to_ne_bytes(count.to_be()) };
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sqliters/page.rs:393:82
[INFO] [stdout]     |
[INFO] [stdout] 393 |     let next_sibling_num_bytes: [u8; consts::NEXT_LEAF_NODE_NUM_SIZE] = unsafe { transmute(next_sibling_num.to_be()) };
[INFO] [stdout]     |                                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: there's also `to_le_bytes` and `to_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 393 -     let next_sibling_num_bytes: [u8; consts::NEXT_LEAF_NODE_NUM_SIZE] = unsafe { transmute(next_sibling_num.to_be()) };
[INFO] [stdout] 393 +     let next_sibling_num_bytes: [u8; consts::NEXT_LEAF_NODE_NUM_SIZE] = unsafe { u64::to_ne_bytes(next_sibling_num.to_be()) };
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sqliters/page.rs:400:28
[INFO] [stdout]     |
[INFO] [stdout] 400 |     let is_root = unsafe { transmute::<[u8;consts::IS_ROOT_SIZE], u8>(is_root_bytes) }.to_be();
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: there's also `from_le_bytes` and `from_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 400 -     let is_root = unsafe { transmute::<[u8;consts::IS_ROOT_SIZE], u8>(is_root_bytes) }.to_be();
[INFO] [stdout] 400 +     let is_root = unsafe { u8::from_ne_bytes(is_root_bytes) }.to_be();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sqliters/page.rs:406:61
[INFO] [stdout]     |
[INFO] [stdout] 406 |     let is_root_bytes: [u8; consts::IS_ROOT_SIZE] = unsafe {transmute(is_root_val.to_be())};
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: there's also `to_le_bytes` and `to_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 406 -     let is_root_bytes: [u8; consts::IS_ROOT_SIZE] = unsafe {transmute(is_root_val.to_be())};
[INFO] [stdout] 406 +     let is_root_bytes: [u8; consts::IS_ROOT_SIZE] = unsafe {u8::to_ne_bytes(is_root_val.to_be())};
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sqliters/page.rs:413:66
[INFO] [stdout]     |
[INFO] [stdout] 413 |     let node_type_bytes: [u8; consts::IS_ROOT_OFFSET] = unsafe { transmute(consts::LEAF_NODE_TYPE.to_be()) };
[INFO] [stdout]     |                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: there's also `to_le_bytes` and `to_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 413 -     let node_type_bytes: [u8; consts::IS_ROOT_OFFSET] = unsafe { transmute(consts::LEAF_NODE_TYPE.to_be()) };
[INFO] [stdout] 413 +     let node_type_bytes: [u8; consts::IS_ROOT_OFFSET] = unsafe { u8::to_ne_bytes(consts::LEAF_NODE_TYPE.to_be()) };
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sqliters/page.rs:417:62
[INFO] [stdout]     |
[INFO] [stdout] 417 |     let is_root_bytes: [u8; consts::IS_ROOT_SIZE] = unsafe { transmute(is_root_value.to_be()) };
[INFO] [stdout]     |                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: there's also `to_le_bytes` and `to_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 417 -     let is_root_bytes: [u8; consts::IS_ROOT_SIZE] = unsafe { transmute(is_root_value.to_be()) };
[INFO] [stdout] 417 +     let is_root_bytes: [u8; consts::IS_ROOT_SIZE] = unsafe { u8::to_ne_bytes(is_root_value.to_be()) };
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sqliters/page.rs:430:14
[INFO] [stdout]     |
[INFO] [stdout] 430 |     unsafe { transmute::<[u8;4], i32>(id_bytes) }.to_be()
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: there's also `from_le_bytes` and `from_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 430 -     unsafe { transmute::<[u8;4], i32>(id_bytes) }.to_be()
[INFO] [stdout] 430 +     unsafe { i32::from_ne_bytes(id_bytes) }.to_be()
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sqliters/page.rs:454:14
[INFO] [stdout]     |
[INFO] [stdout] 454 |     unsafe { transmute::<[u8;4], i32>(id_bytes) }.to_be()
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: there's also `from_le_bytes` and `from_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 454 -     unsafe { transmute::<[u8;4], i32>(id_bytes) }.to_be()
[INFO] [stdout] 454 +     unsafe { i32::from_ne_bytes(id_bytes) }.to_be()
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sqliters/page.rs:462:14
[INFO] [stdout]     |
[INFO] [stdout] 462 |     unsafe { transmute::<[u8;8], u64>(page_num_bytes) }.to_be()
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: there's also `from_le_bytes` and `from_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 462 -     unsafe { transmute::<[u8;8], u64>(page_num_bytes) }.to_be()
[INFO] [stdout] 462 +     unsafe { u64::from_ne_bytes(page_num_bytes) }.to_be()
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sqliters/page.rs:469:14
[INFO] [stdout]     |
[INFO] [stdout] 469 |     unsafe { transmute::<[u8;8], u64>(page_num_bytes) }.to_be()
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: there's also `from_le_bytes` and `from_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 469 -     unsafe { transmute::<[u8;8], u64>(page_num_bytes) }.to_be()
[INFO] [stdout] 469 +     unsafe { u64::from_ne_bytes(page_num_bytes) }.to_be()
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sqliters/page.rs:474:46
[INFO] [stdout]     |
[INFO] [stdout] 474 |     page_num_bytes.copy_from_slice(&unsafe { transmute::<u64, [u8;consts::INTERNAL_NODE_PAGE_NUM_SIZE]>(right_page_num.to_be()) } );
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: there's also `to_le_bytes` and `to_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 474 -     page_num_bytes.copy_from_slice(&unsafe { transmute::<u64, [u8;consts::INTERNAL_NODE_PAGE_NUM_SIZE]>(right_page_num.to_be()) } );
[INFO] [stdout] 474 +     page_num_bytes.copy_from_slice(&unsafe { u64::to_ne_bytes(right_page_num.to_be()) } );
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sqliters/page.rs:483:14
[INFO] [stdout]     |
[INFO] [stdout] 483 |     unsafe { transmute::<[u8;consts::NEXT_LEAF_NODE_NUM_SIZE], u64>(next_page_num_bytes) }.to_be()
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: there's also `from_le_bytes` and `from_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 483 -     unsafe { transmute::<[u8;consts::NEXT_LEAF_NODE_NUM_SIZE], u64>(next_page_num_bytes) }.to_be()
[INFO] [stdout] 483 +     unsafe { u64::from_ne_bytes(next_page_num_bytes) }.to_be()
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sqliters/page.rs:489:36
[INFO] [stdout]     |
[INFO] [stdout] 489 |         .copy_from_slice(&unsafe { transmute::<u64, [u8;consts::INTERNAL_NODE_PAGE_NUM_SIZE]>(next_page_num.to_be()) });
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: there's also `to_le_bytes` and `to_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 489 -         .copy_from_slice(&unsafe { transmute::<u64, [u8;consts::INTERNAL_NODE_PAGE_NUM_SIZE]>(next_page_num.to_be()) });
[INFO] [stdout] 489 +         .copy_from_slice(&unsafe { u64::to_ne_bytes(next_page_num.to_be()) });
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sqliters/page.rs:491:35
[INFO] [stdout]     |
[INFO] [stdout] 491 |         .copy_from_slice(&unsafe {transmute::<i32, [u8;consts::INTERNAL_NODE_KEY_SIZE]>(max_key.to_be())});
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: there's also `to_le_bytes` and `to_be_bytes` if you expect a particular byte order
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 491 -         .copy_from_slice(&unsafe {transmute::<i32, [u8;consts::INTERNAL_NODE_KEY_SIZE]>(max_key.to_be())});
[INFO] [stdout] 491 +         .copy_from_slice(&unsafe {i32::to_ne_bytes(max_key.to_be())});
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.28s
[INFO] running `Command { std: "docker" "inspect" "7b9d33e4d46b9d52455de24b627a06e6d230e2fc8728d82fe91caf0ed1b1e80b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7b9d33e4d46b9d52455de24b627a06e6d230e2fc8728d82fe91caf0ed1b1e80b", kill_on_drop: false }`
[INFO] [stdout] 7b9d33e4d46b9d52455de24b627a06e6d230e2fc8728d82fe91caf0ed1b1e80b
